package com.hns.can.master.entity;

import com.hns.can.common.entity.BaseEntity;
import com.hns.tool.pub.PubUtil;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 事故疑点
 */
@Entity
@Table(name = "T_COMM_ACC_DOB_POIT_INFO")
public class CommAccDobPoitInfoEntity extends BaseEntity {

    private static final long serialVersionUID = -9118456138330250415L;

    private String rcrdId;
    private String corpId;
    private String organId;
    private String lineId;
    private String carId;
    private String drvId;
    private String acdnDoPoiTime;
    private String rcrdTime;
    private String eqmtCode;
    private String licPltNo;
    private String lineCode;
    private BigDecimal spdOfMotVhi;
    private BigDecimal rtteSpd;
    private String swtcSt;
    private String gearsSt;
    private BigDecimal loLgt;
    private BigDecimal loLtt;
    private Date genTime;
    private BigDecimal loDrc;
    private String igniSwtc;
    private String carType;
    private BigDecimal soc;
    private BigDecimal bterySoh;
    private BigDecimal totalVtg;
    private BigDecimal totalEltCrt;
    private String bterySt;
    private BigDecimal highestBteryVtg;
    private BigDecimal lowestBteryVtg;
    private BigDecimal highestTept;
    private BigDecimal lowestTept;
    private String eltMhyCtrlBasicSt;
    private BigDecimal eltMhyActualTorque;
    private BigDecimal eltMhyActualRtteSpd;
    private BigDecimal reservedField1;
    private BigDecimal reservedField2;
    private BigDecimal reservedField3;
    private BigDecimal reservedField4;
    private String reservedField5;
    private String reservedField6;
    private String reservedField7;
    private String reservedField8;

    private BigDecimal gpsSpdOfMotVhi;
    private BigDecimal preAirPrs;
    private BigDecimal lastAirPrs;
    private BigDecimal wteTept;
    private BigDecimal engnOilPrs;

    // Interface property -- 界面上需要的属性 --

    @Transient
    private String organName;

    @Transient
    private String drivName;

    @Transient
    private String lineName;

    @Transient
    private String driLicNo;

    // -------------------------------------
    public static final String TABLENAME = "T_COMM_ACC_DOB_POIT_INFO";
    public static final String RCRDID = "rcrdId";
    public static final String EQMTCODE = "eqmtCode";
    public static final String LICPLTNO = "licPltNo";
    public static final String LINECODE = "lineCode";
    public static final String ACDNDOPOITIME = "acdnDoPoiTime";
    public static final String RCRDTIME = "rcrdTime";
    public static final String SPDOFMOTVHI = "spdOfMotVhi";
    public static final String RTTESPD = "rtteSpd";
    public static final String SWTCST = "swtcSt";
    public static final String GEARSST = "gearsSt";
    public static final String LOLGT = "loLgt";
    public static final String LOLTT = "loLtt";
    //新能源新增字段
    public static final String CARTYPE = "carType";
    public static final String SOC = "soc";
    public static final String BTERYSOH = "bterySoh";
    public static final String TOTALVTG = "totalVtg";
    public static final String TOTALELTCRT = "totalEltCrt";
    public static final String BTERYST = "bterySt";
    public static final String HIGHESTBTERYVTG = "highestBteryVtg";
    public static final String LOWESTBTERYVTG = "lowestBteryVtg";
    public static final String HIGHESTTEPT = "highestTept";
    public static final String LOWESTEPT = "lowestTept";
    public static final String ELTMHYCTRLBASICST = "eltMhyCtrlBasicSt";
    public static final String ELTMHYACTUALTORQUE = "eltMhyActualTorque";
    public static final String ELTMHYACTUALRTTESPD = "eltMhyActualRtteSpd";

    // -------------------------------------
    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;

        CommAccDobPoitInfoEntity other = (CommAccDobPoitInfoEntity) obj;

        if ((PubUtil.isEmpty(this.corpId) && PubUtil.isNotEmpty(other.corpId)) || !this.corpId.equals(other.corpId)) {
            return false;
        }

        if ((PubUtil.isEmpty(this.eqmtCode) && PubUtil.isNotEmpty(other.eqmtCode)) || !this.eqmtCode.equals(other.eqmtCode)) {
            return false;
        }

        if ((PubUtil.isEmpty(this.rcrdTime) && PubUtil.isNotEmpty(other.rcrdTime)) || !this.rcrdTime.equals(other.rcrdTime)) {
            return false;
        }

        if ((PubUtil.isEmpty(this.acdnDoPoiTime) && PubUtil.isNotEmpty(other.acdnDoPoiTime)) || !this.acdnDoPoiTime.equals(other.acdnDoPoiTime)) {
            return false;
        }

        return true;
    }

    @Id
    @Column(name = "RCRD_ID")
    public String getRcrdId() {
        return this.rcrdId;
    }

    public void setRcrdId(String rcrdId) {
        this.rcrdId = rcrdId;
    }

    @Column(name = "CORP_ID")
    public String getCorpId() {
        return this.corpId;
    }

    public void setCorpId(String corpId) {
        this.corpId = corpId;
    }

    @Column(name = "ORGAN_ID")
    public String getOrganId() {
        return this.organId;
    }

    public void setOrganId(String organId) {
        this.organId = organId;
    }

    @Column(name = "LINE_ID")
    public String getLineId() {
        return this.lineId;
    }

    public void setLineId(String lineId) {
        this.lineId = lineId;
    }

    @Column(name = "CAR_ID")
    public String getCarId() {
        return this.carId;
    }

    public void setCarId(String carId) {
        this.carId = carId;
    }

    @Column(name = "DRV_ID")
    public String getDrvId() {
        return this.drvId;
    }

    public void setDrvId(String drvId) {
        this.drvId = drvId;
    }

    @Column(name = "ACDN_DO_POI_TIME")
    public String getAcdnDoPoiTime() {
        return this.acdnDoPoiTime;
    }

    public void setAcdnDoPoiTime(String acdnDoPoiTime) {
        this.acdnDoPoiTime = acdnDoPoiTime;
    }

    @Column(name = "RCRD_TIME")
    public String getRcrdTime() {
        return this.rcrdTime;
    }

    public void setRcrdTime(String rcrdTime) {
        this.rcrdTime = rcrdTime;
    }

    @Column(name = "EQMT_CODE")
    public String getEqmtCode() {
        return this.eqmtCode;
    }

    public void setEqmtCode(String eqmtCode) {
        this.eqmtCode = eqmtCode;
    }

    @Column(name = "LIC_PLT_NO")
    public String getLicPltNo() {
        return this.licPltNo;
    }

    public void setLicPltNo(String licPltNo) {
        this.licPltNo = licPltNo;
    }

    @Column(name = "LINE_CODE")
    public String getLineCode() {
        return this.lineCode;
    }

    public void setLineCode(String lineCode) {
        this.lineCode = lineCode;
    }

    @Column(name = "SPD_OF_MOT_VHI")
    public BigDecimal getSpdOfMotVhi() {
        return this.spdOfMotVhi;
    }

    public void setSpdOfMotVhi(BigDecimal spdOfMotVhi) {
        this.spdOfMotVhi = spdOfMotVhi;
    }

    @Column(name = "RTTE_SPD")
    public BigDecimal getRtteSpd() {
        return this.rtteSpd;
    }

    public void setRtteSpd(BigDecimal rtteSpd) {
        this.rtteSpd = rtteSpd;
    }

    @Column(name = "SWTC_ST")
    public String getSwtcSt() {
        return this.swtcSt;
    }

    public void setSwtcSt(String swtcSt) {
        this.swtcSt = swtcSt;
    }

    @Column(name = "GEARS_ST")
    public String getGearsSt() {
        return this.gearsSt;
    }

    public void setGearsSt(String gearsSt) {
        this.gearsSt = gearsSt;
    }

    @Column(name = "LO_LGT")
    public BigDecimal getLoLgt() {
        return this.loLgt;
    }

    public void setLoLgt(BigDecimal loLgt) {
        this.loLgt = loLgt;
    }

    @Column(name = "LO_LTT")
    public BigDecimal getLoLtt() {
        return this.loLtt;
    }

    public void setLoLtt(BigDecimal loLtt) {
        this.loLtt = loLtt;
    }

    @Column(name = "GEN_TIME")
    public Date getGenTime() {
        return this.genTime;
    }

    public void setGenTime(Date genTime) {
        this.genTime = genTime;
    }

    @Column(name = "LO_DRC")
    public BigDecimal getLoDrc() {
        return this.loDrc;
    }

    public void setLoDrc(BigDecimal loDrc) {
        this.loDrc = loDrc;
    }

    @Column(name = "IGNI_SWTC")
    public String getIgniSwtc() {
        return this.igniSwtc;
    }

    public void setIgniSwtc(String igniSwtc) {
        this.igniSwtc = igniSwtc;
    }

    @Column(name = "CAR_TYPE")
    public String getCarType() {
        return this.carType;
    }

    public void setCarType(String carType) {
        this.carType = carType;
    }

    @Column(name = "SOC")
    public BigDecimal getSoc() {
        return this.soc;
    }

    public void setSoc(BigDecimal soc) {
        this.soc = soc;
    }

    @Column(name = "BTERY_SOH")
    public BigDecimal getBterySoh() {
        return this.bterySoh;
    }

    public void setBterySoh(BigDecimal bterySoh) {
        this.bterySoh = bterySoh;
    }

    @Column(name = "TOTAL_VTG")
    public BigDecimal getTotalVtg() {
        return this.totalVtg;
    }

    public void setTotalVtg(BigDecimal totalVtg) {
        this.totalVtg = totalVtg;
    }

    @Column(name = "TOTAL_ELT_CRT")
    public BigDecimal getTotalEltCrt() {
        return this.totalEltCrt;
    }

    public void setTotalEltCrt(BigDecimal totalEltCrt) {
        this.totalEltCrt = totalEltCrt;
    }

    @Column(name = "BTERY_ST")
    public String getBterySt() {
        return this.bterySt;
    }

    public void setBterySt(String bterySt) {
        this.bterySt = bterySt;
    }

    @Column(name = "HIGHEST_BTERY_VTG")
    public BigDecimal getHighestBteryVtg() {
        return this.highestBteryVtg;
    }

    public void setHighestBteryVtg(BigDecimal highestBteryVtg) {
        this.highestBteryVtg = highestBteryVtg;
    }

    @Column(name = "LOWEST_BTERY_VTG")
    public BigDecimal getLowestBteryVtg() {
        return this.lowestBteryVtg;
    }

    public void setLowestBteryVtg(BigDecimal lowestBteryVtg) {
        this.lowestBteryVtg = lowestBteryVtg;
    }

    @Column(name = "HIGHEST_TEPT")
    public BigDecimal getHighestTept() {
        return this.highestTept;
    }

    public void setHighestTept(BigDecimal highestTept) {
        this.highestTept = highestTept;
    }

    @Column(name = "LOWEST_TEPT")
    public BigDecimal getLowestTept() {
        return this.lowestTept;
    }

    public void setLowestTept(BigDecimal lowestTept) {
        this.lowestTept = lowestTept;
    }

    @Column(name = "ELT_MHY_CTRL_BASIC_ST")
    public String getEltMhyCtrlBasicSt() {
        return this.eltMhyCtrlBasicSt;
    }

    public void setEltMhyCtrlBasicSt(String eltMhyCtrlBasicSt) {
        this.eltMhyCtrlBasicSt = eltMhyCtrlBasicSt;
    }

    @Column(name = "ELT_MHY_ACTUAL_TORQUE")
    public BigDecimal getEltMhyActualTorque() {
        return this.eltMhyActualTorque;
    }

    public void setEltMhyActualTorque(BigDecimal eltMhyActualTorque) {
        this.eltMhyActualTorque = eltMhyActualTorque;
    }

    @Column(name = "ELT_MHY_ACTUAL_RTTE_SPD")
    public BigDecimal getEltMhyActualRtteSpd() {
        return this.eltMhyActualRtteSpd;
    }

    public void setEltMhyActualRtteSpd(BigDecimal eltMhyActualRtteSpd) {
        this.eltMhyActualRtteSpd = eltMhyActualRtteSpd;
    }

    @Column(name = "RESERVED_FIELD_1")
    public BigDecimal getReservedField1() {
        return this.reservedField1;
    }

    public void setReservedField1(BigDecimal reservedField1) {
        this.reservedField1 = reservedField1;
    }

    @Column(name = "RESERVED_FIELD_2")
    public BigDecimal getReservedField2() {
        return this.reservedField2;
    }

    public void setReservedField2(BigDecimal reservedField2) {
        this.reservedField2 = reservedField2;
    }

    @Column(name = "RESERVED_FIELD_3")
    public BigDecimal getReservedField3() {
        return this.reservedField3;
    }

    public void setReservedField3(BigDecimal reservedField3) {
        this.reservedField3 = reservedField3;
    }

    @Column(name = "RESERVED_FIELD_4")
    public BigDecimal getReservedField4() {
        return this.reservedField4;
    }

    public void setReservedField4(BigDecimal reservedField4) {
        this.reservedField4 = reservedField4;
    }

    @Column(name = "RESERVED_FIELD_5")
    public String getReservedField5() {
        return this.reservedField5;
    }

    public void setReservedField5(String reservedField5) {
        this.reservedField5 = reservedField5;
    }

    @Column(name = "RESERVED_FIELD_6")
    public String getReservedField6() {
        return this.reservedField6;
    }

    public void setReservedField6(String reservedField6) {
        this.reservedField6 = reservedField6;
    }

    @Column(name = "RESERVED_FIELD_7")
    public String getReservedField7() {
        return this.reservedField7;
    }

    public void setReservedField7(String reservedField7) {
        this.reservedField7 = reservedField7;
    }

    @Column(name = "RESERVED_FIELD_8")
    public String getReservedField8() {
        return this.reservedField8;
    }

    public void setReservedField8(String reservedField8) {
        this.reservedField8 = reservedField8;
    }

    @Column(name = "GPS_SPD_OF_MOT_VHI")
    public BigDecimal getGpsSpdOfMotVhi() {
        return gpsSpdOfMotVhi;
    }

    public void setGpsSpdOfMotVhi(BigDecimal gpsSpdOfMotVhi) {
        this.gpsSpdOfMotVhi = gpsSpdOfMotVhi;
    }

    @Column(name = "PRE_AIR_PRS")
    public BigDecimal getPreAirPrs() {
        return preAirPrs;
    }

    public void setPreAirPrs(BigDecimal preAirPrs) {
        this.preAirPrs = preAirPrs;
    }

    @Column(name = "LAST_AIR_PRS")
    public BigDecimal getLastAirPrs() {
        return lastAirPrs;
    }

    public void setLastAirPrs(BigDecimal lastAirPrs) {
        this.lastAirPrs = lastAirPrs;
    }

    @Column(name = "WTE_TEPT")
    public BigDecimal getWteTept() {
        return wteTept;
    }

    public void setWteTept(BigDecimal wteTept) {
        this.wteTept = wteTept;
    }

    @Column(name = "ENGN_OIL_PRS")
    public BigDecimal getEngnOilPrs() {
        return engnOilPrs;
    }

    public void setEngnOilPrs(BigDecimal engnOilPrs) {
        this.engnOilPrs = engnOilPrs;
    }

    @Transient
    public String getOrganName() {
        return organName;
    }

    public void setOrganName(String organName) {
        this.organName = organName;
    }

    @Transient
    public String getDrivName() {
        return drivName;
    }

    public void setDrivName(String drivName) {
        this.drivName = drivName;
    }

    @Transient
    public String getLineName() {
        return lineName;
    }

    public void setLineName(String lineName) {
        this.lineName = lineName;
    }

    @Transient
    public String getDriLicNo() {
        return driLicNo;
    }

    public void setDriLicNo(String driLicNo) {
        this.driLicNo = driLicNo;
    }

}
